/**
 * @file Atransfer_default.h
 * @author Moon
 * @brief Atransfer default
 * @version 0.0.1
 * @date 2022-08-11
 * 
 * @copyright (c) 2022 Moon
 * 
 */

#ifndef __ATRANSFER_default_H__
#define __ATRANSFER_default_H__

#include "Atransfer_config.h"
#include "A_shell.h"

#define ATRANSFER_WRITE(data,len)               Ashell_write(data,len)          //数据发送函数
#define ATRANSFER_READ(data,len)                Ashell_flush_read(data,len)     //数据读取函数

#ifndef ATRANSFER_USR_RTOS
#define ATRANSFER_USR_RTOS                      1                       //是否使用FreeRTOS（1：使用，0：不使用）
#endif

#ifndef ATRANSFER_MALLOC
#error trance file not define "ATRANSFER_MALLOC",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_FREE
#error trance file not define "ATRANSFER_FREE",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_TICK_PER_SECOND
#error trance file not define "ATRANSFER_TICK_PER_SECOND",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_GET_TICK_COUNT
#error trance file not define "ATRANSFER_GET_TICK_COUNT",please define in Atransfer_config.h!!!
#endif


#ifndef ATRANSFER_USE_UPDATA
#define ATRANSFER_USE_UPDATA                    1                       //是否使用shell升级（1：使用，0：不使用）

#ifndef ATRANSFER_IAP_DEFAULT_DEVICE_ID
#error trance use updata but not define "ATRANSFER_IAP_DEFAULT_DEVICE_ID",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_IAP_UPDATE_FLAG
#error trance use updata but not define "ATRANSFER_IAP_UPDATE_FLAG",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_PP_UPDATE_FLAG
#error trance use updata but not define "ATRANSFER_PP_UPDATE_FLAG",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_PP_DEVICE_ID_INFO
#error trance use updata but not define "ATRANSFER_PP_DEVICE_ID_INFO",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_PP_UPDATE_SHA256
#error trance use updata but not define "ATRANSFER_PP_UPDATE_SHA256",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_PPGetInitFlag
#error trance use updata but not define "ATRANSFER_PPGetInitFlag",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_PPItemIWrite
#error trance use updata but not define "ATRANSFER_PPItemIWrite",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_PPItemRead
#error trance use updata but not define "ATRANSFER_PPItemRead",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_PPUpdateInfoCopyToFlash
#error trance use updata but not define "ATRANSFER_PPUpdateInfoCopyToFlash",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_FLASH_START_ADDR
#error trance use updata but not define "ATRANSFER_FLASH_START_ADDR",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_FLASH_AREA_SIZE
#error trance use updata but not define "ATRANSFER_FLASH_AREA_SIZE",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_FLASH_READ_FUN
#error trance use updata but not define "ATRANSFER_FLASH_READ_FUN",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_FLASH_WRITE_FUN
#error trance use updata but not define "ATRANSFER_FLASH_WRITE_FUN",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_FLASH_ERASE_FUN
#error trance use updata but not define "ATRANSFER_FLASH_ERASE_FUN",please define in Atransfer_config.h!!!
#endif

#ifndef ATRANSFER_SYSTEM_RESET_FUN
#error trance use updata but not define "ATRANSFER_SYSTEM_RESET_FUN",please define in Atransfer_config.h!!!
#endif
#endif

#endif
